`timescale 1ns / 10ps
`define clock_period 20

module switch_4bit_tb;

	reg[3:0] ina;
	reg[3:0] inb;
	reg[3:0] inc;
	reg[3:0] ind;
	reg[2:0] switch_signal;
	wire[3:0] cout;

	switch_4bit sw0(
		.Ina(ina),
		.Inb(inb),
		.Inc(inc),
		.Ind(ind),
		.Switch_signal(switch_signal),
		.Cout(cout)
	);
	
	initial begin
		
		ina = 4'd2;
		inb = 4'd5;
		inc = 4'd7;
		ind = 4'd11;
		
		switch_signal = 3'd0;
		#(`clock_period)
		
		switch_signal = 3'd1;
		#(`clock_period)
		
		switch_signal = 3'd2;
		#(`clock_period)
		
		switch_signal = 3'd3;
		#(`clock_period)
		
		switch_signal = 3'd4;
		#(`clock_period)
		
		switch_signal = 3'd5;
		#(`clock_period)
		
		$stop;
		
	end

endmodule
